package co.com.smart.persistence.entity.dto;

import java.io.Serializable;

import javax.persistence.*;

import java.math.BigDecimal;
import java.util.Date;


/**
 * The persistent class for the smart_plan_servicios database table.
 * 
 */
@Entity
@Table(name="smart_plan_servicios")
@NamedQuery(name="SmartPlanServicio.findAll", query="SELECT s FROM SmartPlanServicio s")
public class SmartPlanServicio implements Serializable {
	private static final long serialVersionUID = 1L;

	@Id
	@Column(name="sm_scplanservicio")
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	private BigDecimal smScplanservicio;

	@Column(name="sm_coplanservicio")
	private String smCoplanservicio;

	@Column(name="sm_cousuario")
	private String smCousuario;

	@Column(name="sm_dsplanservicio")
	private String smDsplanservicio;

	@Temporal(TemporalType.DATE)
	@Column(name="sm_fhingreso")
	private Date smFhingreso;

	@Temporal(TemporalType.DATE)
	@Column(name="sm_fhmodificacion")
	private Date smFhmodificacion;

	@Temporal(TemporalType.DATE)
	@Column(name="sm_fhretiro")
	private Date smFhretiro;

	@Column(name="sm_nmvalorservicio")
	private BigDecimal smNmvalorservicio;

	//bi-directional many-to-one association to SmartDatosMaestro
	@ManyToOne(optional = false, fetch = FetchType.LAZY)
	@JoinColumn(name="sm_sctiposervicios",referencedColumnName="sm_scdatosmaestros")
	private SmartDatosMaestro smartDatosMaestro1;

	//bi-directional many-to-one association to SmartDatosMaestro
	@ManyToOne(optional = false, fetch = FetchType.LAZY)
	@JoinColumn(name="sm_sctipoafiliacion",referencedColumnName="sm_scdatosmaestros")
	private SmartDatosMaestro smartDatosMaestro2;

	//bi-directional many-to-one association to SmartDatosMaestro
	@ManyToOne(optional = false, fetch = FetchType.LAZY)
	@JoinColumn(name="sm_scnivel",referencedColumnName="sm_scdatosmaestros")
	private SmartDatosMaestro smartDatosMaestro3;
	
	//bi-directional many-to-one association to SmartDatosMaestro
	@ManyToOne(optional = false, fetch = FetchType.LAZY)
	@JoinColumn(name="sm_scplan",referencedColumnName="sm_scdatosmaestros")
	private SmartDatosMaestro smartDatosMaestro4;

	public SmartPlanServicio() {
	}

	public BigDecimal getSmScplanservicio() {
		return this.smScplanservicio;
	}

	public void setSmScplanservicio(BigDecimal smScplanservicio) {
		this.smScplanservicio = smScplanservicio;
	}

	public String getSmCoplanservicio() {
		return this.smCoplanservicio;
	}

	public void setSmCoplanservicio(String smCoplanservicio) {
		this.smCoplanservicio = smCoplanservicio;
	}

	public String getSmCousuario() {
		return this.smCousuario;
	}

	public void setSmCousuario(String smCousuario) {
		this.smCousuario = smCousuario;
	}

	public String getSmDsplanservicio() {
		return this.smDsplanservicio;
	}

	public void setSmDsplanservicio(String smDsplanservicio) {
		this.smDsplanservicio = smDsplanservicio;
	}

	public Date getSmFhingreso() {
		return this.smFhingreso;
	}

	public void setSmFhingreso(Date smFhingreso) {
		this.smFhingreso = smFhingreso;
	}

	public Date getSmFhmodificacion() {
		return this.smFhmodificacion;
	}

	public void setSmFhmodificacion(Date smFhmodificacion) {
		this.smFhmodificacion = smFhmodificacion;
	}

	public Date getSmFhretiro() {
		return this.smFhretiro;
	}

	public void setSmFhretiro(Date smFhretiro) {
		this.smFhretiro = smFhretiro;
	}

	public BigDecimal getSmNmvalorservicio() {
		return this.smNmvalorservicio;
	}

	public void setSmNmvalorservicio(BigDecimal smNmvalorservicio) {
		this.smNmvalorservicio = smNmvalorservicio;
	}

	public SmartDatosMaestro getSmartDatosMaestro1() {
		return this.smartDatosMaestro1;
	}

	public void setSmartDatosMaestro1(SmartDatosMaestro smartDatosMaestro1) {
		this.smartDatosMaestro1 = smartDatosMaestro1;
	}

	public SmartDatosMaestro getSmartDatosMaestro2() {
		return this.smartDatosMaestro2;
	}

	public void setSmartDatosMaestro2(SmartDatosMaestro smartDatosMaestro2) {
		this.smartDatosMaestro2 = smartDatosMaestro2;
	}

	public SmartDatosMaestro getSmartDatosMaestro3() {
		return this.smartDatosMaestro3;
	}

	public void setSmartDatosMaestro3(SmartDatosMaestro smartDatosMaestro3) {
		this.smartDatosMaestro3 = smartDatosMaestro3;
	}
	
	public SmartDatosMaestro getSmartDatosMaestro4() {
		return this.smartDatosMaestro4;
	}
	
	public void setSmartDatosMaestro4(SmartDatosMaestro smartDatosMaestro4) {
		this.smartDatosMaestro4 = smartDatosMaestro4;
	}

}